package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.annotation.Excel.ColumnType;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 专业信息表 major
 * 
 * @author ruoyi
 */
public class Major extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 专业ID */
    @Excel(name = "专业序号", cellType = ColumnType.NUMERIC)
    private Long majorId;

    /** 专业名称 */
    @Excel(name = "专业名称")
    private String majorName;

    /** 专业代码 */
    @Excel(name = "专业代码")
    private String majorCode;

    /** 所属学科门类 */
    @Excel(name = "所属学科门类")
    private String subjectCategory;

    /** 所属一级学科 */
    @Excel(name = "所属一级学科")
    private String firstLevelSubject;

    /** 学制（年） */
    @Excel(name = "学制", cellType = ColumnType.NUMERIC)
    private Integer duration;

    /** 学位类型（0学士 1硕士 2博士） */
    @Excel(name = "学位类型", readConverterExp = "0=学士,1=硕士,2=博士")
    private String degreeType;

    /** 状态（0正常 1停用） */
    @Excel(name = "状态", readConverterExp = "0=正常,1=停用")
    private String status;

    public Long getMajorId()
    {
        return majorId;
    }

    public void setMajorId(Long majorId)
    {
        this.majorId = majorId;
    }

    public String getMajorName()
    {
        return majorName;
    }

    public void setMajorName(String majorName)
    {
        this.majorName = majorName;
    }

    public String getMajorCode()
    {
        return majorCode;
    }

    public void setMajorCode(String majorCode)
    {
        this.majorCode = majorCode;
    }

    public String getSubjectCategory()
    {
        return subjectCategory;
    }

    public void setSubjectCategory(String subjectCategory)
    {
        this.subjectCategory = subjectCategory;
    }

    public String getFirstLevelSubject()
    {
        return firstLevelSubject;
    }

    public void setFirstLevelSubject(String firstLevelSubject)
    {
        this.firstLevelSubject = firstLevelSubject;
    }

    public Integer getDuration()
    {
        return duration;
    }

    public void setDuration(Integer duration)
    {
        this.duration = duration;
    }

    public String getDegreeType()
    {
        return degreeType;
    }

    public void setDegreeType(String degreeType)
    {
        this.degreeType = degreeType;
    }

    public String getStatus()
    {
        return status;
    }

    public void setStatus(String status)
    {
        this.status = status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("majorId", getMajorId())
            .append("majorName", getMajorName())
            .append("majorCode", getMajorCode())
            .append("subjectCategory", getSubjectCategory())
            .append("firstLevelSubject", getFirstLevelSubject())
            .append("duration", getDuration())
            .append("degreeType", getDegreeType())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
} 